package com.erp.ae.domain.vo;

import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.oldDomain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.util.Date;


/**
 * 商户订单商品视图对象 ae_store_order_product
 *
 * @author erp
 * @date 2023-03-09
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class AeStoreOrderProductVo extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @Excel(name = "主键")
    private Long id;

    /**
     * 订单id
     */
    @Excel(name = "订单id")
    private Long orderId;

    /**
     * 商品id
     */
    @Excel(name = "商品id")
    private Long productId;

    /**
     * 类目id
     */
    @Excel(name = "类目id")
    private String categoryId;

    /**
     * 商品名称
     */
    @Excel(name = "商品名称")
    private String productName;

    /**
     * 商品数量
     */
    @Excel(name = "商品数量")
    private Long productCount;

    /**
     * 联盟佣金比例
     */
    @Excel(name = "联盟佣金比例")
    private String afflicateFeeRate;

    /**
     * 买家firstName
     */
    @Excel(name = "买家firstName")
    private String buyerSignerFirstName;

    /**
     * 买家lastName
     */
    @Excel(name = "买家lastName")
    private String buyerSignerLastName;

    /**
     * 子订单是否能提交纠纷
     */
    @Excel(name = "子订单是否能提交纠纷")
    private String canSubmitIssue;

    /**
     * 子订单id
     */
    @Excel(name = "子订单id")
    private Long childId;

    /**
     * 妥投时间
     */
    @Excel(name = "妥投时间")
    private String deliveryTime;

    /**
     * 交易佣金比例
     */
    @Excel(name = "交易佣金比例")
    private String escrowFeeRate;

    /**
     * 限时达
     */
    @Excel(name = "限时达")
    private String freightCommitDay;

    /**
     * 资金状态;NOT_PAY:未付款; PAY_SUCCESS:付款成功; WAIT_SELLER_CHECK:卖家验款
     */
    @Excel(name = "资金状态;NOT_PAY:未付款; PAY_SUCCESS:付款成功; WAIT_SELLER_CHECK:卖家验款")
    private String fundStatus;

    /**
     * 备货时间
     */
    @Excel(name = "备货时间")
    private Long goodsPrepareTime;

    /**
     * 纠纷类型
     */
    @Excel(name = "纠纷类型")
    private String issueMode;

    /**
     * 纠纷状态;NO_ISSUE:无纠纷; IN_ISSUE:纠纷中; END_ISSUE:纠纷结束
     */
    @Excel(name = "纠纷状态;NO_ISSUE:无纠纷; IN_ISSUE:纠纷中; END_ISSUE:纠纷结束")
    private String issueStatus;

    /**
     * 物流费用金额（子订单没有运费，请忽略）
     */
//    @Excel(name = "物流费用金额", converter = ExcelDictConvert.class)
//    @ExcelDictFormat(readConverterExp = "子=订单没有运费，请忽略")
    private String childLogisticsAmount;

    /**
     * 物流费用币种（子订单没有运费，请忽略）
     */
//    @Excel(name = "物流费用币种", converter = ExcelDictConvert.class)
//    @ExcelDictFormat(readConverterExp = "子=订单没有运费，请忽略")
    private String childLogisticsCurrencyCode;

    /**
     * 物流服务
     */
    @Excel(name = "物流服务")
    private String logisticsServiceName;

    /**
     * 物流类型
     */
    @Excel(name = "物流类型")
    private String logisticsType;

    /**
     * 买家备注
     */
    @Excel(name = "买家备注")
    private String memo;

    /**
     * 是否假一赔三产品
     */
    @Excel(name = "是否假一赔三产品")
    private String moneyBack3x;

    /**
     * 商品主图Url
     */
    @Excel(name = "商品主图Url")
    private String productImgUrl;

    /**
     * 快照Url
     */
    @Excel(name = "快照Url")
    private String productSnapUrl;

    /**
     * 商品规格
     */
    @Excel(name = "商品规格")
    private String productStandard;

    /**
     * 商品单位
     */
    @Excel(name = "商品单位")
    private String productUnit;

    /**
     * 商品单价
     */
    @Excel(name = "商品单价")
    private String productUnitPrice;

    /**
     * 金额（mount=cent/cant_factor）
     */
//    @Excel(name = "金额", converter = ExcelDictConvert.class)
//    @ExcelDictFormat(readConverterExp = "m=ount=cent/cant_factor")
    private String productAmount;

    /**
     * 最小货币单位（例如人民币：分）
     */
//    @Excel(name = "最小货币单位", converter = ExcelDictConvert.class)
//    @ExcelDictFormat(readConverterExp = "例=如人民币：分")
    private BigDecimal productCent;

    /**
     * 到最小货币单元的乘积因子（例如人民币：100）
     */
//    @Excel(name = "到最小货币单元的乘积因子", converter = ExcelDictConvert.class)
//    @ExcelDictFormat(readConverterExp = "例=如人民币：100")
    private Long productCentFactor;

    /**
     * 默认最小精确度
     */
    @Excel(name = "默认最小精确度")
    private String productDefaultFractionDigits;

    /**
     * 币种名称
     */
    @Excel(name = "币种名称")
    private String productDisplayName;

    /**
     * 币种数字编码
     */
    @Excel(name = "币种数字编码")
    private String productNumericCode;

    /**
     * 币种符号
     */
    @Excel(name = "币种符号")
    private String productSymbol;

    /**
     * 币种
     */
    @Excel(name = "币种")
    private String productUnitCurrencyCode;

    /**
     * 发货者类型
     */
    @Excel(name = "发货者类型")
    private String sendGoodsOperator;

    /**
     * 最后发货时间
     */
    @Excel(name = "最后发货时间")
    private String sendGoodsTime;

    /**
     * 订单显示状态
     */
    @Excel(name = "订单显示状态")
    private String showStatus;

    /**
     * 商品编码
     */
    @Excel(name = "商品编码")
    private String skuCode;

    /**
     * 子订单状态
     */
    @Excel(name = "子订单状态")
    private String sonOrderStatus;

    /**
     * 全部商品金额
     */
    @Excel(name = "全部商品金额")
    private String totalProductAmount;

    /**
     * 币种
     */
    @Excel(name = "币种")
    private String totalProductCurrencyCode;

    /**
     * 子订单中的各种标签
     */
    @Excel(name = "子订单中的各种标签")
    private String tags;

    /**
     * 乐观锁
     */
    @Excel(name = "乐观锁")
    private String revision;

    /**
     * 创建人
     */
    @Excel(name = "创建人")
    private String createBy;

    /**
     * 创建时间
     */
    @Excel(name = "创建时间")
    private Date createTime;

    /**
     * 更新人
     */
    @Excel(name = "更新人")
    private String updateBy;

    /**
     * 更新时间
     */
    @Excel(name = "更新时间")
    private Date updateTime;


}
